@echo off
chcp 65001 >nul
echo 🚀 使用pnpm安装依赖（最轻量的包管理器）...

:: 检查是否以管理员身份运行
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo ⚠️  建议以管理员身份运行此脚本
    echo 右键点击此文件，选择"以管理员身份运行"
    echo.
)

echo 📋 开始使用pnpm安装...

:: 1. 检查pnpm是否已安装
echo 步骤1: 检查pnpm...
pnpm --version >nul 2>&1
if %errorlevel% neq 0 (
    echo pnpm未安装，正在安装...
    
    :: 使用npm安装pnpm
    npm --version >nul 2>&1
    if %errorlevel% equ 0 (
        echo 使用npm安装pnpm...
        npm install -g pnpm --registry=https://registry.npmmirror.com/
    ) else (
        echo 使用PowerShell安装pnpm...
        powershell -Command "iwr https://get.pnpm.io/install.ps1 -useb | iex"
    )
)

:: 2. 配置pnpm
echo 步骤2: 配置pnpm...
pnpm config set registry https://registry.npmmirror.com/
pnpm config set store-dir "%USERPROFILE%\.pnpm-store"

:: 3. 清理现有依赖
echo 步骤3: 清理现有依赖...
if exist "node_modules" rmdir /s /q "node_modules"
if exist "pnpm-lock.yaml" del "pnpm-lock.yaml"

:: 4. 安装依赖
echo 步骤4: 安装依赖...
echo 这可能需要几分钟时间，请耐心等待...
pnpm install

if %errorlevel% neq 0 (
    echo.
    echo ❌ pnpm安装失败，尝试其他方法...
    echo.
    echo 🔄 请尝试：
    echo 1. 以管理员身份运行此脚本
    echo 2. 手动安装pnpm: https://pnpm.io/installation
    echo 3. 使用yarn: install-yarn.bat
) else (
    echo.
    echo ✅ 依赖安装成功！
    echo.
    echo 🚀 现在可以启动服务器了：
    echo    pnpm dev
    echo 或
    echo    npm run dev
    echo 或
    echo    start.bat dev
)

echo.
pause
